/*
 * An objects of this class represent one job in the queue of various jobs. It would contain
 * various information needed about the particular job in order for the job handler to 
 * balance the load properly.
 */

public class Job implements IJob
{
	private String jobName = "";
	private String job_description = "";
	private long memoryRequirement = 1;
	private int duration_seconds = 10;
	private char job_priority = 'M';
	private int job_startHour = -1;
	private int job_startMinute = -1;
	private int job_startSecond = -1;
	private int processing_elements = 1;
	
	public Job(String job_name, String job_description,long memoryRequirement,int dur_sec,char jobPriority, int npe)
	{
		this.jobName = job_name;
		this.job_description = job_description;
		this.memoryRequirement = memoryRequirement;
		this.duration_seconds = dur_sec;
		this.job_priority = jobPriority;
		this.processing_elements = npe;
	}

	public String getJobName()
	{
		return jobName;
	}
	
	public String getJobDescription()
	{
		return job_description;
	}
	
	public long getMemoryRequirement()
	{
		return memoryRequirement;
	}
	
	public int getDuration()
	{
		return duration_seconds;
	}
	
	public int getStartHour()
	{
		return this.job_startHour;
	}
	
	public int getStartMinute()
	{
		return this.job_startMinute;
	}
	
	public int getStartSecond()
	{
		return this.job_startSecond;
	}
	
	public char getJobPriority()
	{
		return this.job_priority;
	}
	
	public int getNPE()
	{
		return this.processing_elements;
	}
	
	public void setStartHour(int hour)
	{
		this.job_startHour = hour;
	}
	
	public void setStartMinute(int minute)
	{
		this.job_startMinute = minute;
	}
	
	public void setStartSecond(int second)
	{
		this.job_startSecond = second;
	}
}
